import time

# 初始状态
temperature = 25  # 初始温度
water_level = True  # 水箱中有水
power_on = False  # 电源关闭
repair_needed = False  # 不需要维修
is_night = False  # 不是晚上

# 模拟时间变化
current_time = 0  # 初始时间为0，表示12:00 AM

# 模拟系统运行一整天
while current_time < 24:
    # 判断是否是晚上（模拟11点到7点为晚上）
    if current_time >= 23 or current_time < 7:
        is_night = True
    else:
        is_night = False

    # 根据状态图描述，执行相应的动作
    if is_night:
        power_on = False
    else:
        if temperature < 20 and water_level:
            power_on = True
        elif temperature >= 100:
            power_on = False

    # 模拟烧水过程
    if power_on:
        temperature += 5  # 假设每个时间单位温度上升5度

    # 打印当前状态
    print(f"时间：{current_time}:00，温度：{temperature}°C，电源：{'开启' if power_on else '关闭'}")

    # 模拟时间流逝
    time.sleep(1)  # 假设每个时间单位为1小时
    current_time += 1

# 判断是否需要维修
if temperature >= 100:
    repair_needed = True

# 输出维修状态
if repair_needed:
    print("水箱需要维修！")
